home *** CD-ROM | disk | FTP | other *** search
/ Run Magazine ReRun 1986 September & October / rerun-1986-09-10.d64 / demo 1 (.txt) < prev    next >
Encoding:
Commodore BASIC  |  1986-01-01  |  1.9 KB  |  93 lines

  1. 200 ' demo one for run basic 1.0
  2. 210 pi=3.14159265
  3. 250 ' the binary tree
  4. 260 ' these 3 ***error***routines draw a tree
  5. 270 '
  6. 280 ***error*** ***error***-branch(size,angle,level)
  7. 290 ***error***
  8.  2*size
  9. 300 ***error*** node(size,angle,level)
  10. 310 ***error*** 2*size
  11. 320 ***error***
  12. 330 '
  13. 340 ***error*** ***error***-branch(size,angle,level)
  14. 350 ***error***
  15.  size
  16. 360 ***error*** node(size,angle,level)
  17. 370 ***error*** size
  18. 380 ***error***
  19. 390 '
  20. 400 ***error*** node(size,angle,level)
  21. 410 if level=0 then ***error***
  22. 420 ***error*** angle
  23. 430 ***error******error***-branch(size,angle,level-1)
  24. 440 ***error*** 2*angle
  25. 450 ***error******error***-branch(size,angle,level-1)
  26. 460 ***error*** angle
  27. 470 ***error***
  28. 500 ' this ***error***routine prints strings
  29. 510 ' to the specified screen coordinates.
  30. 515 ' please note: when using run basic,
  31. 520 ' try using this ***error***routine.
  32. 530 ' retains turtle ***error***data, heading
  33. 540 ***error*** putstr(x,y,char$)
  34. 541 ***error*** xsav,ysav,hsav,c
  35. 542 xsav=***error***: ysav=***error***: hsav=***error***
  36. 550 ***error******error***: ***error*** x,y: ***error*** 0
  37. 570 for a=1 to len(char$)
  38. 580 c=asc(mid$(char$,a,1))
  39. 590 ' convert to screen code value
  40. 600 if c<64 then 640
  41. 610 if c<96 then c=cand31: goto 640
  42. 620 if c<192 then c=(cand63)or96:goto 640
  43. 630 c=cand95
  44. 640 ***error*** c: ***error***
  45.  8
  46. 650 next a
  47. 655 ***error*** xsav,ysav:***error*** hsav:'position
  48. 660 ***error***
  49. 700 ' draw tree by calling either
  50. 710 ' ***error***-branch or ***error***-branch
  51. 720 ***error*** 0,1: ***error***
  52. 730 ' label tree
  53. 740 ***error*** putstr(100,180,"binary tree")
  54. 750 ***error*** 160,20
  55. 760 ***error*** pi/2: ***error*** 1: ***error******error***
  56. 770 ***error*** ***error***-branch(10,pi/9,7)
  57. 800 '
  58. 810 ***error*** c-curve(size,level)
  59. 820 if level=0 then ***error***
  60.  size: ***error***
  61. 830 ***error*** c-curve(size,level-1)
  62. 840 ***error*** pi/2
  63. 850 ***error*** c-curve(size,level-1)
  64. 860 ***error*** pi/2
  65. 870 ***error***
  66. 880 '
  67. 890 ***error***:***error*** putstr(210,100,"c curve")
  68. 900 '
  69. 910 ***error*** 160,50: ***error*** pi: ***error******error***
  70. 920 ***error*** c-curve(3,10)
  71. 960 ' this ***error***saveroutine draws polygons
  72. 970 ' such as squares, triangles,
  73. 980 ' or octagons. polygons with many
  74. 990 ' sides appear as circles.
  75. 1000 ***error*** poly(size,num)
  76. 1010 for a=1 to num
  77. 1020 ***error***
  78.  size
  79. 1030 ***error*** 2*pi/num
  80. 1040 next a
  81. 1050 ***error***
  82. 1060 '
  83. 1070 ***error*** 160,50: ***error*** pi:***error***
  84. 1085 ***error*** putstr(128,20,"triangle")
  85. 1090 ***error******error***:***error*** poly(60,3):' triangle
  86. 1095 ***error***:***error*** putstr(136,20,"square")
  87. 1100 ***error******error***:***error*** poly(60,4): ' square
  88. 1105 ***error***:***error*** putstr(136,20,"octagon")
  89. 1110 ***error******error***: ***error*** poly(20,8):' octagon
  90. 1115 ***error***: ***error*** putstr(136,20,"circle")
  91. 1120 ***error******error***: ***error*** poly(5,40): ' circle
  92. 1155 for a=1 to 1000 :next :***error*** :end
  93.